body {
  position: relative;
  height: 90vh;
}
.root {
  display: flex;
  flex-direction: row;
  border: 1px solid black;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -672.5px;
  margin-top: -187px;
  border-radius: 5px;
  box-shadow: 2px 2px 4px black;
  background-color: #eaecf3;
  color: snow;
  .conter {
    width: 916px;
    margin: 0;
    padding: 5px;
    .f1 {
      width: 100%;
      height: 60px;
      display: flex;
      flex-direction: row;
      align-items: center;
      ul {
        li {
          flex: 1;
          height: 30px;
          line-height: 30px;
          text-align: center;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
        }
      }
    }
    > div:not(:first-child) {
      width: 100%;
      height: 60px;
      display: flex;
      flex-direction: row;
      align-items: center;
      > ul {
        > li:not(:first-child):not(:last-child) {
          width: 45px;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
          img {
            width: 28px;
            margin: 8px;
          }
        }
      }
    }
    div {
      ul {
        flex: 1;
        display: flex;
        flex-direction: row;
        align-items: center;
        margin: 0;
        padding: 0;
        user-select: none;
      }
    }
    .f2 {
      ul {
        li:first-child {
          width: 45px;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
        }
        li:last-child {
          flex: 1;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
          line-height: 40px;
        }
      }
    }
    .f3 {
      ul {
        li:first-child,
        li:last-child {
          flex: 1;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
        }
      }
    }
    .f4 {
      ul {
        li:first-child,
        li:last-child {
          flex: 1;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
          line-height: 45px;
        }
      }
    }
    .f5 {
      ul {
        li:first-child,
        li:last-child {
          flex: 1;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
          line-height: 45px;
        }
      }
    }
    .f6 {
      ul {
        li:first-child,
        li:last-child {
          flex: 1;
          height: 45px;
          border: 1px solid black;
          border-radius: 5px;
          margin: 5px;
          padding: 3px;
          display: flex;
          flex-direction: column;
        }
        li:nth-child(4) {
          flex: none !important;
          width: 250px !important;
        }
        li {
          line-height: 45px;
        }
      }
    }
  }
  .subkey {
    margin-left: 10px;
    padding: 5px;
    display: flex;
    flex-direction: row;
    .left {
      height: 100%;
      display: flex;
      flex-direction: column;
      padding-top: 18px;
      > div {
        width: 100%;
        ul {
          display: flex;
          margin: 0;
          padding: 0;
          li {
            width: 45px;
            height: 45px;
            user-select: none;
            font-size: 12px;
            text-align: center;
            border: 1px solid black;
            border-radius: 5px;
            margin: 5px;
            img {
              width: 100%;
            }
          }
        }
      }
      div:nth-child(4) ul li {
        visibility: hidden;
        height: 47px;
      }
      div:nth-child(5) ul li:not(:nth-child(2)) {
        visibility: hidden;
      }
    }
    .right {
      height: 100%;
      > div:first-child {
        margin: 10px 0;
        li {
          flex: 1;
          height: 45px;
          user-select: none;
          font-size: 12px;
          text-align: center;
          line-height: 45px;
          border-radius: 5px;
          margin: 5px;
          box-shadow: none;
          color: #000;
          div {
            width: 7px;
            height: 7px;
            border: 1px solid black;
            margin: auto;
            margin-top: 10px;
            border-radius: 50%;
            overflow: hidden;
          }
        }
      }
      > div:not(:first-child) {
        display: flex;
        flex-direction: row;
        > div:first-child {
          > div:first-child > div:not(:first-child) ul li {
            font-size: 16px;
          }
          > div > ul > li:first-child {
            width: 102px;
          }
        }
        > div:not(:first-child) > ul {
          height: 100%;
          > li:not(:first-child) {
            flex: 1;
            line-height: 60px;
          }
        }
        ul {
          display: flex;
          flex-direction: column;
          li {
            width: 45px;
            height: 45px;
            user-select: none;
            font-size: 12px;
            text-align: center;
            border: 1px solid black;
            border-radius: 5px;
            margin: 5px;
          }
        }
      }
      div {
        ul {
          display: flex;
          flex-direction: row;
        }
        > div:first-child > div {
          > ul {
            display: flex;
            flex-direction: row;
          }
          > div > ul {
            display: flex;
            flex-direction: row;
          }
        }
      }
    }
  }
}
li:hover {
  cursor: pointer;
  filter: brightness(150%);
}
.active {
  filter: brightness(150%);
  box-shadow: 2px 2px 2px #000 inset;
}
ul {
  margin: 0;
  padding: 0;
  list-style: none;
  li {
    box-shadow: 2px 2px 2px #000;
  }
}
.deg {
  background-color: red;
  box-shadow: 1px 1px 5px 1px red;
  border-color: red !important;
}